package com.ruoyi.project.manage.invest.domain;

import java.math.BigDecimal;
import java.util.List;

import com.ruoyi.project.manage.detail.domain.ProjectInvestDetail;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.framework.aspectj.lang.annotation.Excel;
import com.ruoyi.framework.web.domain.BaseEntity;

/**
 * 资金落实记录对象 eb_project_invest
 * 
 * @author fangkun
 * @date 2022-03-28
 */
public class ProjectInvest extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 资金落实记录 */
    private Long projectInvestId;

    /** 项目ID */
    @Excel(name = "项目ID")
    private Long projectId;

    /** 总投资 */
    @Excel(name = "总投资")
    private BigDecimal totalInvest;

    /** 完成投资 */
    @Excel(name = "完成投资")
    private BigDecimal doneInvest;

    /** 实际到位资金 */
    @Excel(name = "实际到位资金")
    private BigDecimal actualInvest;

    /** 计划投资 */
    @Excel(name = "计划投资")
    private BigDecimal planInvest;

    /** 资金需求 */
    @Excel(name = "资金需求")
    private BigDecimal fundDemand;

    /** 资金落实状态 */
    @Excel(name = "资金落实状态")
    private Integer investStatus;

    /** 状态（0正常 1暂停） */
    @Excel(name = "状态", readConverterExp = "0=正常,1=暂停")
    private String status;

    private List<ProjectInvestDetail> investDetails;

    public List<ProjectInvestDetail> getInvestDetails() {
        return investDetails;
    }

    public void setInvestDetails(List<ProjectInvestDetail> investDetails) {
        this.investDetails = investDetails;
    }

    public void setProjectInvestId(Long projectInvestId)
    {
        this.projectInvestId = projectInvestId;
    }

    public Long getProjectInvestId()
    {
        return projectInvestId;
    }
    public void setProjectId(Long projectId)
    {
        this.projectId = projectId;
    }

    public Long getProjectId()
    {
        return projectId;
    }
    public void setTotalInvest(BigDecimal totalInvest)
    {
        this.totalInvest = totalInvest;
    }

    public BigDecimal getTotalInvest()
    {
        return totalInvest;
    }
    public void setDoneInvest(BigDecimal doneInvest)
    {
        this.doneInvest = doneInvest;
    }

    public BigDecimal getDoneInvest()
    {
        return doneInvest;
    }
    public void setActualInvest(BigDecimal actualInvest)
    {
        this.actualInvest = actualInvest;
    }

    public BigDecimal getActualInvest()
    {
        return actualInvest;
    }
    public void setPlanInvest(BigDecimal planInvest)
    {
        this.planInvest = planInvest;
    }

    public BigDecimal getPlanInvest()
    {
        return planInvest;
    }
    public void setFundDemand(BigDecimal fundDemand)
    {
        this.fundDemand = fundDemand;
    }

    public BigDecimal getFundDemand()
    {
        return fundDemand;
    }
    public void setInvestStatus(Integer investStatus)
    {
        this.investStatus = investStatus;
    }

    public Integer getInvestStatus()
    {
        return investStatus;
    }
    public void setStatus(String status)
    {
        this.status = status;
    }

    public String getStatus()
    {
        return status;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("projectInvestId", getProjectInvestId())
            .append("projectId", getProjectId())
            .append("totalInvest", getTotalInvest())
            .append("doneInvest", getDoneInvest())
            .append("actualInvest", getActualInvest())
            .append("planInvest", getPlanInvest())
            .append("fundDemand", getFundDemand())
            .append("investStatus", getInvestStatus())
            .append("status", getStatus())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .toString();
    }
}
